/*
 * ReturnInstruction.h
 *
 *  Created on: 17/nov/2010
 *      Author: computer
 */

#ifndef RETURNINSTRUCTION_H_
#define RETURNINSTRUCTION_H_
#include "Expression.h"
#include "FlowExpression.h"

namespace TreeExpression {

class ReturnInstruction : public FlowExpression, public Expression_CRTP<ReturnInstruction> {
	public:
		ReturnInstruction();
		ReturnInstruction(const ReturnInstruction&);
		~ReturnInstruction();

		virtual bool isStop() const;

		virtual AutoPointer<Expression> eval(CopyPointer<Context>& context);
		virtual std::string toString() const;

};

}

#endif /* RETURNINSTRUCTION_H_ */
